home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / glass / glass.lha / GLASS / contsens / check.var.h < prev    next >
Text File  |  1991-01-31  |  2KB  |  51 lines

  1.  
  2.  
  3. /*   Copyright (C) 1990 Riet Oolman
  4.  
  5. This file is part of GLASS.
  6.  
  7. GLASS is free software; you can redistribute it and/or modify
  8. it under the terms of the GNU General Public License as published by
  9. the Free Software Foundation; either version 1, or (at your option)
  10. any later version.
  11.  
  12. GLASS is distributed in the hope that it will be useful,
  13. but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  15. GNU General Public License for more details.
  16.  
  17. You should have received a copy of the GNU General Public License
  18. along with GLASS; see the file COPYING.  If not, write to
  19. the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  20.  
  21.  
  22. /* file: check.var.h
  23.    author: H. Oolman
  24.    last changed: 13-7-1990
  25.    purpose: variables for the simple context-sensitive and
  26.             type-checking algorithm
  27.    modifications: 
  28.    updated for new version of tc
  29.    p2c translated, tmc version
  30. */
  31.  
  32. envrec *curenv;   /* types of all names in scope */
  33. symbol marker; /* for placing a mark in an environment;
  34.           to be initialised to Buildsymbol("",0l) */
  35. long namessupply;   /* provides unique names for yet unknown types */
  36. long extsupply;   /* provides unique numbers for extending names */
  37. boolean forfull;
  38.     /* True <-> full glass check, otherwise size check */
  39. boolean takewarning;   /* true<-> warnings are counted as errors too */
  40. boolean errordiscovered;
  41. /* true at the end, if context-sensitive error was found;
  42.        used for correct exit code */
  43. boolean uniq; /* make all names unique by putting _i after them */
  44. boolean adaptds; /* do adaptations of the data structure */
  45. errorrec *errorlist;
  46.     /* list of errors discovered (may be discarded yet) */
  47. symbol nestednames;
  48. orig nestednorig;
  49. /* names of functions in whose scope we are (innermost at front), and
  50.    origin of innermost */
  51.